home *** CD-ROM | disk | FTP | other *** search
/ Amiga Plus 2002 #11 / Amiga Plus CD - 2002 - No. 11.iso / Tools / Development / Emperor_ / Emperor / Projects / Tiger / Tiger_fonctions.h < prev    next >
Encoding:
C/C++ Source or Header  |  2002-10-28  |  8.0 KB  |  208 lines

  1. char* pioche_pgm(int);
  2. char* pioche_MNA(int);
  3. int norm_pente(float);
  4. int norm_pluie(int);
  5. int sens_pente(float);
  6. int normalisation(int);
  7. void loop(int);
  8. BOOL IO_boucle();
  9. void circle_param(int, int, int, int&, int&, float);
  10.  
  11. char* pioche_pgm(int k)
  12. {
  13.     char *preserve[151]={"p00.pgm",
  14.                         "p01.pgm", "p02.pgm", "p03.pgm", "p04.pgm", "p05.pgm",
  15.                         "p06.pgm", "p07.pgm", "p08.pgm", "p09.pgm", "p10.pgm",
  16.                         "p11.pgm", "p12.pgm", "p13.pgm", "p14.pgm", "p15.pgm",
  17.                         "p16.pgm", "p17.pgm", "p18.pgm", "p19.pgm", "p20.pgm",
  18.                         "p21.pgm", "p22.pgm", "p23.pgm", "p24.pgm", "p25.pgm",
  19.                         "p26.pgm", "p27.pgm", "p28.pgm", "p29.pgm", "p30.pgm",
  20.                         "p31.pgm", "p32.pgm", "p33.pgm", "p34.pgm", "p35.pgm",
  21.                         "p36.pgm", "p37.pgm", "p38.pgm", "p39.pgm", "p40.pgm",
  22.                         "p41.pgm", "p42.pgm", "p43.pgm", "p44.pgm", "p45.pgm",
  23.                         "p46.pgm", "p47.pgm", "p48.pgm", "p49.pgm", "p50.pgm",
  24.                         "p51.pgm", "p52.pgm", "p53.pgm", "p54.pgm", "p55.pgm",
  25.                         "p56.pgm", "p57.pgm", "p58.pgm", "p59.pgm", "p60.pgm",
  26.                         "p61.pgm", "p62.pgm", "p63.pgm", "p64.pgm", "p65.pgm",
  27.                         "p66.pgm", "p67.pgm", "p68.pgm", "p69.pgm", "p70.pgm",
  28.                         "p71.pgm", "p72.pgm", "p73.pgm", "p74.pgm", "p75.pgm",
  29.                         "p76.pgm", "p77.pgm", "p78.pgm", "p79.pgm", "p80.pgm",
  30.                         "p81.pgm", "p82.pgm", "p83.pgm", "p84.pgm", "p85.pgm",
  31.                         "p86.pgm", "p87.pgm", "p88.pgm", "p89.pgm", "p90.pgm",
  32.                         "p91.pgm", "p92.pgm", "p93.pgm", "p94.pgm", "p95.pgm",
  33.                         "p96.pgm", "p97.pgm", "p98.pgm", "p99.pgm", "p100.pgm",
  34.                         "p101.pgm", "p102.pgm", "p103.pgm", "p104.pgm", "p105.pgm",
  35.                         "p106.pgm", "p107.pgm", "p108.pgm", "p109.pgm", "p110.pgm",
  36.                         "p111.pgm", "p112.pgm", "p113.pgm", "p114.pgm", "p115.pgm",
  37.                         "p116.pgm", "p117.pgm", "p118.pgm", "p119.pgm", "p120.pgm",
  38.                         "p121.pgm", "p122.pgm", "p123.pgm", "p124.pgm", "p125.pgm",
  39.                         "p126.pgm", "p127.pgm", "p128.pgm", "p129.pgm", "p130.pgm",
  40.                         "p131.pgm", "p132.pgm", "p133.pgm", "p134.pgm", "p135.pgm",
  41.                         "p136.pgm", "p137.pgm", "p138.pgm", "p139.pgm", "p140.pgm",
  42.                         "p141.pgm", "p142.pgm", "p143.pgm", "p144.pgm", "p145.pgm",
  43.                         "p146.pgm", "p147.pgm", "p148.pgm", "p149.pgm", "p150.pgm"};
  44.     return preserve[k];
  45. }
  46.  
  47. char* pioche_MNA(int k)
  48. {
  49.     char *preserve[101]={"M00.pgm",
  50.                         "M01.pgm", "M02.pgm", "M03.pgm", "M04.pgm", "M05.pgm",
  51.                         "M06.pgm", "M07.pgm", "M08.pgm", "M09.pgm", "M10.pgm",
  52.                         "M11.pgm", "M12.pgm", "M13.pgm", "M14.pgm", "M15.pgm",
  53.                         "M16.pgm", "M17.pgm", "M18.pgm", "M19.pgm", "M20.pgm",
  54.                         "M21.pgm", "M22.pgm", "M23.pgm", "M24.pgm", "M25.pgm",
  55.                         "M26.pgm", "M27.pgm", "M28.pgm", "M29.pgm", "M30.pgm",
  56.                         "M31.pgm", "M32.pgm", "M33.pgm", "M34.pgm", "M35.pgm",
  57.                         "M36.pgm", "M37.pgm", "M38.pgm", "M39.pgm", "M40.pgm",
  58.                         "M41.pgm", "M42.pgm", "M43.pgm", "M44.pgm", "M45.pgm",
  59.                         "M46.pgm", "M47.pgm", "M48.pgm", "M49.pgm", "M50.pgm",
  60.                         "M51.pgm", "M52.pgm", "M53.pgm", "M54.pgm", "M55.pgm",
  61.                         "M56.pgm", "M57.pgm", "M58.pgm", "M59.pgm", "M60.pgm",
  62.                         "M61.pgm", "M62.pgm", "M63.pgm", "M64.pgm", "M65.pgm",
  63.                         "M66.pgm", "M67.pgm", "M68.pgm", "M69.pgm", "M70.pgm",
  64.                         "M71.pgm", "M72.pgm", "M73.pgm", "M74.pgm", "M75.pgm",
  65.                         "M76.pgm", "M77.pgm", "M78.pgm", "M79.pgm", "M80.pgm",
  66.                         "M81.pgm", "M82.pgm", "M83.pgm", "M84.pgm", "M85.pgm",
  67.                         "M86.pgm", "M87.pgm", "M88.pgm", "M89.pgm", "M90.pgm",
  68.                         "M91.pgm", "M92.pgm", "M93.pgm", "M94.pgm", "M95.pgm",
  69.                         "M96.pgm", "M97.pgm", "M98.pgm", "M99.pgm", "M100.pgm"};
  70.     return preserve[k];
  71. }
  72.  
  73. int norm_pluie(int pluie)      //normaliser la pluviométrie
  74. {
  75.     int pluie_int=0;
  76.     if(pluie<300)
  77.         pluie_int=(-1);
  78.     if((pluie>=300) && (pluie<=600))
  79.         pluie_int=0;
  80.     if(pluie>600)
  81.         pluie_int=1;
  82.     return pluie_int;
  83. }
  84.  
  85. int norm_pente(float pente)             //normaliser la pente
  86. {
  87.     int pente_int=0;
  88.     if(pente<0.29)
  89.         pente_int=1;
  90.     if((pente>=0.29) && (pente<=0.89))
  91.         pente_int=0;
  92.     if(pente>0.89)
  93.         pente_int=(-1);
  94.     return pente_int;
  95. }
  96.  
  97. int sens_pente(float pente)
  98. {
  99.     int sens=0;
  100.     if(pente>0)
  101.         sens=1;
  102.     else
  103.         sens=-1;
  104.     return sens;
  105. }
  106.  
  107. int normalisation(int somme1)      //bloquer l'augmentation
  108. {
  109.     int somme2=0;
  110.     if(somme1>=1)
  111.         somme2=2;
  112.     else
  113.         somme2=somme1;
  114.     if(somme2<=-1)
  115.         somme2=-2;
  116.     return somme2;
  117. }
  118.  
  119. void loop(int loop_tick)
  120. {
  121.     printf(" tick: %d", loop_tick);
  122.     loop_tick++;
  123. }
  124.  
  125. BOOL IO_boucle()
  126. {
  127.     BOOL pause=FALSE, fermer=FALSE;
  128.     Emperor_Input=0L;
  129.     do
  130.     {
  131.         while((Emperor_Input = RA_HandleInput(WindowObject1, &Emperor_Code)) != WMHI_LASTMSG)
  132.         {
  133.             //printf("input reçu: %d\n", Emperor_Input);
  134.             switch(Emperor_Input & WMHI_CLASSMASK)
  135.             {
  136.                 case WMHI_GADGETUP:
  137.                     switch(Emperor_Input & WMHI_GADGETMASK)
  138.                     {
  139.                         case 39:
  140.                             //Button3_GadgetUp_Event();
  141.                             //printf("case pause: %d\n", pause);
  142.                             if(pause==TRUE)
  143.                             {
  144.                                 pause=FALSE;
  145.                                 SetGadgetAttrs(Button6, Window1, NULL, GA_Disabled, TRUE, TAG_DONE);
  146.                             }
  147.                             else
  148.                             {
  149.                                 pause=TRUE;
  150.                                 SetGadgetAttrs(Button6, Window1, NULL, GA_Disabled, FALSE, TAG_DONE);
  151.                             }
  152.                             //printf("case pause: %d\n", pause);
  153.                             break;
  154.                         case 42:
  155.                             //Button6_GadgetUp_Event();
  156.                             //printf("case fermer: %d\n");
  157.                             SetGadgetAttrs(Button3, Window1, NULL, GA_Selected, FALSE, TAG_DONE);
  158.                             SetGadgetAttrs(Button6, Window1, NULL, GA_Disabled, FALSE, TAG_DONE);
  159.                             SetGadgetAttrs(Button7, Window1, NULL, GA_Disabled, FALSE, TAG_DONE);
  160.                             SetGadgetAttrs(Button8, Window1, NULL, GA_Disabled, FALSE, TAG_DONE);
  161.                             fermer=TRUE;
  162.                             return fermer;
  163.                             break;
  164.                         case 46:
  165.                             Button7_GadgetUp_Event();
  166.                             break;
  167.                         case 47:
  168.                             Button8_GadgetUp_Event();
  169.                             break;
  170.                         default:
  171.                             pause=FALSE;
  172.                             break;
  173.                     }
  174.                 default:
  175.                     break;
  176.             }
  177.         }
  178.     }
  179.     while(pause==TRUE);
  180. }
  181.  
  182. void circle_param(int tempr, int i, int j, int& x, int& y, float alpha)
  183. {
  184.     float tempx=0.0, tempy=0.0, arrx=0.0, arry=0.0;
  185.     tempx = tempr * cos(alpha);
  186.     arrx = floor(tempx);
  187.     if((tempx-arrx)<0.5)
  188.     {
  189.         tempx=floor(tempx);
  190.     }
  191.     else
  192.     {
  193.         tempx=ceil(tempx);
  194.     }
  195.     tempy = tempr * sin(alpha);
  196.     arry = floor(tempy);
  197.     if((tempy-arry)<0.5)
  198.     {
  199.         tempy=floor(tempy);
  200.     }
  201.     else
  202.     {
  203.         tempy=ceil(tempy);
  204.     }
  205.     x = i + int(tempx);
  206.     y = j + int(tempy);
  207. }
  208.